for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
var Objects = {
merge: function (a, b) {
if (typeof b === 'undefined' || b === null) {
return a
}
if (typeof b !== 'object' || typeof a !== 'object' || a === null) {
return b
if (Array.isArray(a) || Array.isArray(b)) {
var target = {}
Object.keys(a).forEach(function (key) {
target[key] = a[key]
})
Object.keys(b).forEach(function (key) {
target[key] = Objects.merge(target[key], b[key])
return target
},
copy: function (value) {
if (typeof value !== 'object' || value === null) {
return value
if (Array.isArray(value)) {
return value.map(Objects.copy)
Object.keys(value).forEach(function (key) {
target[key] = Objects.copy(value[key])
module.exports = {
Objects: Objects